<?php
class produto{
	private $id;
	private $id_empresa;
	private $id_marca;
	private $id_setor;
        private $codebar;
	private $nome;
	private $quantidade;
	private $val_custo;
	private $val_venda;
	private $limitedesc;
	private $dt_compra;
	private $dt_venc;
	private $minimo;
	private $medida;

	public function __construct(){
		$this->id = NULL;
		$this->id_empresa = NULL;
		$this->id_marca = NULL;
		$this->id_setor = NULL;
                $this->codebar = NULL;
		$this->nome = NULL;
		$this->quantidade = NULL;
		$this->val_custo = NULL;
		$this->val_venda = NULL;
		$this->limitedesc = NULL;
		$this->dt_compra = NULL;
		$this->dt_venc = NULL;
		$this->minimo = NULL;
		$this->medida = NULL;
	}

	public function get_id(){
		return $this->id;
	}
	public function get_id_empresa(){
		return $this->id_empresa;
	}
	public function get_id_marca(){
		return $this->id_marca;
	}
	public function get_id_setor(){
		return $this->id_setor;
	}
        public function get_codebar(){
		return $this->codebar;
	}
	public function get_nome(){
		return $this->nome;
	}
	public function get_quantidade(){
		return $this->quantidade;
	}
	public function get_val_custo(){
		return $this->val_custo;
	}
	public function get_val_venda(){
		return $this->val_venda;
	}
	public function get_limitedesc(){
		return $this->limitedesc;
	}
	public function get_dt_compra(){
            if($this->dt_compra != ''){
                $dia = substr($this->dt_compra, 8, 2);
                $mes = substr($this->dt_compra, 5, 2);
                $ano = substr($this->dt_compra, 0, 4);
		return $dia."/".$mes."/".$ano;
            }else{
                return '';
            }
	}
	public function get_dt_venc(){
            if($this->dt_venc != ''){
                $dia = substr($this->dt_venc, 8, 2);
                $mes = substr($this->dt_venc, 5, 2);
                $ano = substr($this->dt_venc, 0, 4);
		return $dia."/".$mes."/".$ano;
            }else{
                return '';
            }
	}
	public function get_minimo(){
		return $this->minimo;
	}
	public function get_medida(){
		return $this->medida;
	}
	
	
	public function set_id($id){
		if($id != '' && valida::numero($id)){
                    $this->id = $id;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_empresa($id_empresa){
		if($id_empresa != '' && valida::numero($id_empresa)){
                    $this->id_empresa = $id_empresa;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_marca($id_marca){
		if(valida::numero($id_marca)){
                    $this->id_marca = $id_marca;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_setor($id_setor){
		if(valida::numero($id_setor)){
                    $this->id_setor = $id_setor;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_nome($nome){
		if($nome != '' && valida::nome_num($nome)){
                    $this->nome = $nome;
                    return 1;
		}else{
                    return 0;
                }
        }
        
        public function set_codebar($codebar){
		if($codebar != '' && valida::numero($codebar)){
                    $this->codebar = $codebar;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_quantidade($quantidade){
		if(valida::float($quantidade)){
                    $this->quantidade = $quantidade;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_val_custo($val_custo){
		if(valida::float($val_custo)){
                    $this->val_custo = $val_custo;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_val_venda($val_venda){
		if($val_venda != '' && valida::float($val_venda)){
                    $this->val_venda = $val_venda;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_limitedesc($limitedesc){
		if(valida::float($limitedesc)){
                    $this->limitedesc = $limitedesc;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_compra($dt_compra){
                $dia = substr($dt_compra, 0, 2);
                $mes = substr($dt_compra, 3, 2);
                $ano = substr($dt_compra, 6, 4);
                
                if(!valida::numero($dia)){return 0;}
                if(!valida::numero($mes)){return 0;}
                if(!valida::numero($ano)){return 0;}
                
		if(valida::data($dia, $mes, $ano)){
                    $this->dt_compra = $ano."-".$mes."-".$dia;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_venc($dt_venc){
		if($dt_venc == ''){
                    return 1;
                }
                
                $dia = substr($dt_venc, 0, 2);
                $mes = substr($dt_venc, 3, 2);
                $ano = substr($dt_venc, 6, 4);
                
                if(!valida::numero($dia)){return 0;}
                if(!valida::numero($mes)){return 0;}
                if(!valida::numero($ano)){return 0;}
                
		if(valida::data($dia, $mes, $ano)){
                    $this->dt_venc = $ano."-".$mes."-".$dia;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_minimo($minimo){
		if(valida::float($minimo)){
                    $this->minimo = $minimo;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_medida($medida){
                $medida = addslashes($medida);
                $this->medida = $medida;
                return 1;
        }

	
	
	public function salvar(){
                $sql_select = "select count(*) from sgm_produto where id = '".$this->id."'";
		$sql_insert = "insert into sgm_produto(id, id_empresa, id_marca, id_setor, codebar, nome, quantidade, val_custo, val_venda, limitedesc, dt_compra, dt_venc, minimo, medida) values('".$this->id."', '".$this->id_empresa."', '".$this->id_marca."', '".$this->id_setor."', '".$this->codebar."', '".$this->nome."', '".$this->quantidade."', '".$this->val_custo."', '".$this->val_venda."', '".$this->limitedesc."', '".$this->dt_compra."', '".$this->dt_venc."', '".$this->minimo."', '".$this->medida."')";
                $sql_update = "update sgm_produto set id = '".$this->id."', id_empresa = '".$this->id_empresa."', id_marca = '".$this->id_marca."', id_setor = '".$this->id_setor."', codebar = '".$this->codebar."', nome = '".$this->nome."', quantidade = '".$this->quantidade."', val_custo = '".$this->val_custo."', val_venda = '".$this->val_venda."', limitedesc = '".$this->limitedesc."', dt_compra = '".$this->dt_compra."', dt_venc = '".$this->dt_venc."', minimo = '".$this->minimo."', medida = '".$this->medida."' where id = '$this->id'";

		$db = new db(config::$driver);
 		$con = $db->conecta();
		$res_sel = $db->query($sql_select, $con);
                $sel = $db->fetch_array($res_sel);
                
                if($sel[0] > 0){
                    $res = $db->query($sql_update, $con);
                    $texto = "Alterar";
                }else{
                    $res = $db->query($sql_insert, $con);
                    $texto = "Inserir";
                }
                
		$db->close($con);
                
                $texto .= " produto: ID = '".$this->id."', ID da marca = '".$this->id_marca."', ID do setor = '".$this->id_setor."', Código de barras = '".$this->codebar."', Nome do produto = '".$this->nome."', Quantidade = '".$this->quantidade."', Valor de custo = '".$this->val_custo."', Valor de venda = '".$this->val_venda."', Limite de desconto = '".$this->limitedesc."', Data da compra = '".$this->dt_compra."', Data de vencimento = '".$this->dt_venc."', Minimo em estoque = '".$this->minimo."', Unidade de medida = '".$this->medida."'";
                $log = new log($_SESSION["sgm_id_empresa"], $_SESSION["sgm_usuario"], $texto);
                unset($log);

		return $res;
	}
        
	public function carregar($id){
		$sql = "select * from sgm_produto where codebar = '$id' and id_empresa = '".$_SESSION["sgm_id_empresa"]."'";

		$db = new db(config::$driver);
 		$con = $db->conecta();
		$res = $db->query($sql, $con);
		$db->close($con);

		$sgm_produto = $db->fetch_array($res);

		$this->id = $sgm_produto["id"];
		$this->id_empresa = $sgm_produto["id_empresa"];
		$this->id_marca = $sgm_produto["id_marca"];
		$this->id_setor = $sgm_produto["id_setor"];
		$this->codebar = $sgm_produto["codebar"];
                $this->nome = $sgm_produto["nome"];
		$this->quantidade = $sgm_produto["quantidade"];
		$this->val_custo = $sgm_produto["val_custo"];
		$this->val_venda = $sgm_produto["val_venda"];
		$this->limitedesc = $sgm_produto["limitedesc"];
		$this->dt_compra = $sgm_produto["dt_compra"];
		$this->dt_venc = $sgm_produto["dt_venc"];
		$this->minimo = $sgm_produto["minimo"];
		$this->medida = $sgm_produto["medida"];
		
		return 1;
	}
}
?>
